// 定义所有可用的颜色变量
type ThemeColors = {
  primary: string;
  primaryDark: string;
  secondary: string;
  inputBg: string;
  bgPrimary: string;
  bgSecondary: string;
  bgTertiary: string;
  bgDark: string;
  accentPrimary: string;
  accentSecondary: string;
  textPrimary: string;
  textSecondary: string;
  textTertiary: string;
  success: string;
  warning: string;
  danger: string;
  online: string;
  idle: string;
  dnd: string;
  offline: string;
};

// 定义主题配置
export interface Theme {
  colors: ThemeColors;
  borderRadius: string;
  transition: string;
}

// 定义样式对象的类型
export interface UserDropdownStyles {
  list: React.CSSProperties;
  listItem: React.CSSProperties & {
    hover?: React.CSSProperties;
    active?: React.CSSProperties;
    danger?: React.CSSProperties & {
      hover?: React.CSSProperties;
    };
    success?: React.CSSProperties;
    disabled?: React.CSSProperties;
  };
  divider: React.CSSProperties;
  header: React.CSSProperties;
}